package com.lwlk.zdk.model.T;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

public class TDisPlatformExample {
    protected String orderByClause;

    protected boolean distinct;

    protected List<Criteria> oredCriteria;

    public TDisPlatformExample() {
        oredCriteria = new ArrayList<Criteria>();
    }

    public void setOrderByClause(String orderByClause) {
        this.orderByClause = orderByClause;
    }

    public String getOrderByClause() {
        return orderByClause;
    }

    public void setDistinct(boolean distinct) {
        this.distinct = distinct;
    }

    public boolean isDistinct() {
        return distinct;
    }

    public List<Criteria> getOredCriteria() {
        return oredCriteria;
    }

    public void or(Criteria criteria) {
        oredCriteria.add(criteria);
    }

    public Criteria or() {
        Criteria criteria = createCriteriaInternal();
        oredCriteria.add(criteria);
        return criteria;
    }

    public Criteria createCriteria() {
        Criteria criteria = createCriteriaInternal();
        if (oredCriteria.size() == 0) {
            oredCriteria.add(criteria);
        }
        return criteria;
    }

    protected Criteria createCriteriaInternal() {
        Criteria criteria = new Criteria();
        return criteria;
    }

    public void clear() {
        oredCriteria.clear();
        orderByClause = null;
        distinct = false;
    }

    protected abstract static class GeneratedCriteria {
        protected List<Criterion> criteria;

        protected GeneratedCriteria() {
            super();
            criteria = new ArrayList<Criterion>();
        }

        public boolean isValid() {
            return criteria.size() > 0;
        }

        public List<Criterion> getAllCriteria() {
            return criteria;
        }

        public List<Criterion> getCriteria() {
            return criteria;
        }

        protected void addCriterion(String condition) {
            if (condition == null) {
                throw new RuntimeException("Value for condition cannot be null");
            }
            criteria.add(new Criterion(condition));
        }

        protected void addCriterion(String condition, Object value, String property) {
            if (value == null) {
                throw new RuntimeException("Value for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value));
        }

        protected void addCriterion(String condition, Object value1, Object value2, String property) {
            if (value1 == null || value2 == null) {
                throw new RuntimeException("Between values for " + property + " cannot be null");
            }
            criteria.add(new Criterion(condition, value1, value2));
        }

        public Criteria andIdIsNull() {
            addCriterion("id is null");
            return (Criteria) this;
        }

        public Criteria andIdIsNotNull() {
            addCriterion("id is not null");
            return (Criteria) this;
        }

        public Criteria andIdEqualTo(Integer value) {
            addCriterion("id =", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotEqualTo(Integer value) {
            addCriterion("id <>", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThan(Integer value) {
            addCriterion("id >", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("id >=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThan(Integer value) {
            addCriterion("id <", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdLessThanOrEqualTo(Integer value) {
            addCriterion("id <=", value, "id");
            return (Criteria) this;
        }

        public Criteria andIdIn(List<Integer> values) {
            addCriterion("id in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotIn(List<Integer> values) {
            addCriterion("id not in", values, "id");
            return (Criteria) this;
        }

        public Criteria andIdBetween(Integer value1, Integer value2) {
            addCriterion("id between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andIdNotBetween(Integer value1, Integer value2) {
            addCriterion("id not between", value1, value2, "id");
            return (Criteria) this;
        }

        public Criteria andPlatformIdIsNull() {
            addCriterion("platform_id is null");
            return (Criteria) this;
        }

        public Criteria andPlatformIdIsNotNull() {
            addCriterion("platform_id is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformIdEqualTo(Integer value) {
            addCriterion("platform_id =", value, "platformId");
            return (Criteria) this;
        }

        public Criteria andPlatformIdNotEqualTo(Integer value) {
            addCriterion("platform_id <>", value, "platformId");
            return (Criteria) this;
        }

        public Criteria andPlatformIdGreaterThan(Integer value) {
            addCriterion("platform_id >", value, "platformId");
            return (Criteria) this;
        }

        public Criteria andPlatformIdGreaterThanOrEqualTo(Integer value) {
            addCriterion("platform_id >=", value, "platformId");
            return (Criteria) this;
        }

        public Criteria andPlatformIdLessThan(Integer value) {
            addCriterion("platform_id <", value, "platformId");
            return (Criteria) this;
        }

        public Criteria andPlatformIdLessThanOrEqualTo(Integer value) {
            addCriterion("platform_id <=", value, "platformId");
            return (Criteria) this;
        }

        public Criteria andPlatformIdIn(List<Integer> values) {
            addCriterion("platform_id in", values, "platformId");
            return (Criteria) this;
        }

        public Criteria andPlatformIdNotIn(List<Integer> values) {
            addCriterion("platform_id not in", values, "platformId");
            return (Criteria) this;
        }

        public Criteria andPlatformIdBetween(Integer value1, Integer value2) {
            addCriterion("platform_id between", value1, value2, "platformId");
            return (Criteria) this;
        }

        public Criteria andPlatformIdNotBetween(Integer value1, Integer value2) {
            addCriterion("platform_id not between", value1, value2, "platformId");
            return (Criteria) this;
        }

        public Criteria andAccessCodeIsNull() {
            addCriterion("access_code is null");
            return (Criteria) this;
        }

        public Criteria andAccessCodeIsNotNull() {
            addCriterion("access_code is not null");
            return (Criteria) this;
        }

        public Criteria andAccessCodeEqualTo(String value) {
            addCriterion("access_code =", value, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeNotEqualTo(String value) {
            addCriterion("access_code <>", value, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeGreaterThan(String value) {
            addCriterion("access_code >", value, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeGreaterThanOrEqualTo(String value) {
            addCriterion("access_code >=", value, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeLessThan(String value) {
            addCriterion("access_code <", value, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeLessThanOrEqualTo(String value) {
            addCriterion("access_code <=", value, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeLike(String value) {
            addCriterion("access_code like", value, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeNotLike(String value) {
            addCriterion("access_code not like", value, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeIn(List<String> values) {
            addCriterion("access_code in", values, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeNotIn(List<String> values) {
            addCriterion("access_code not in", values, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeBetween(String value1, String value2) {
            addCriterion("access_code between", value1, value2, "accessCode");
            return (Criteria) this;
        }

        public Criteria andAccessCodeNotBetween(String value1, String value2) {
            addCriterion("access_code not between", value1, value2, "accessCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeIsNull() {
            addCriterion("platform_code is null");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeIsNotNull() {
            addCriterion("platform_code is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeEqualTo(String value) {
            addCriterion("platform_code =", value, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeNotEqualTo(String value) {
            addCriterion("platform_code <>", value, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeGreaterThan(String value) {
            addCriterion("platform_code >", value, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeGreaterThanOrEqualTo(String value) {
            addCriterion("platform_code >=", value, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeLessThan(String value) {
            addCriterion("platform_code <", value, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeLessThanOrEqualTo(String value) {
            addCriterion("platform_code <=", value, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeLike(String value) {
            addCriterion("platform_code like", value, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeNotLike(String value) {
            addCriterion("platform_code not like", value, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeIn(List<String> values) {
            addCriterion("platform_code in", values, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeNotIn(List<String> values) {
            addCriterion("platform_code not in", values, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeBetween(String value1, String value2) {
            addCriterion("platform_code between", value1, value2, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformCodeNotBetween(String value1, String value2) {
            addCriterion("platform_code not between", value1, value2, "platformCode");
            return (Criteria) this;
        }

        public Criteria andPlatformNameIsNull() {
            addCriterion("platform_name is null");
            return (Criteria) this;
        }

        public Criteria andPlatformNameIsNotNull() {
            addCriterion("platform_name is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformNameEqualTo(String value) {
            addCriterion("platform_name =", value, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameNotEqualTo(String value) {
            addCriterion("platform_name <>", value, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameGreaterThan(String value) {
            addCriterion("platform_name >", value, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameGreaterThanOrEqualTo(String value) {
            addCriterion("platform_name >=", value, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameLessThan(String value) {
            addCriterion("platform_name <", value, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameLessThanOrEqualTo(String value) {
            addCriterion("platform_name <=", value, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameLike(String value) {
            addCriterion("platform_name like", value, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameNotLike(String value) {
            addCriterion("platform_name not like", value, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameIn(List<String> values) {
            addCriterion("platform_name in", values, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameNotIn(List<String> values) {
            addCriterion("platform_name not in", values, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameBetween(String value1, String value2) {
            addCriterion("platform_name between", value1, value2, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformNameNotBetween(String value1, String value2) {
            addCriterion("platform_name not between", value1, value2, "platformName");
            return (Criteria) this;
        }

        public Criteria andPlatformDescIsNull() {
            addCriterion("platform_desc is null");
            return (Criteria) this;
        }

        public Criteria andPlatformDescIsNotNull() {
            addCriterion("platform_desc is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformDescEqualTo(String value) {
            addCriterion("platform_desc =", value, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescNotEqualTo(String value) {
            addCriterion("platform_desc <>", value, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescGreaterThan(String value) {
            addCriterion("platform_desc >", value, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescGreaterThanOrEqualTo(String value) {
            addCriterion("platform_desc >=", value, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescLessThan(String value) {
            addCriterion("platform_desc <", value, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescLessThanOrEqualTo(String value) {
            addCriterion("platform_desc <=", value, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescLike(String value) {
            addCriterion("platform_desc like", value, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescNotLike(String value) {
            addCriterion("platform_desc not like", value, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescIn(List<String> values) {
            addCriterion("platform_desc in", values, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescNotIn(List<String> values) {
            addCriterion("platform_desc not in", values, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescBetween(String value1, String value2) {
            addCriterion("platform_desc between", value1, value2, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformDescNotBetween(String value1, String value2) {
            addCriterion("platform_desc not between", value1, value2, "platformDesc");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameIsNull() {
            addCriterion("platform_username is null");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameIsNotNull() {
            addCriterion("platform_username is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameEqualTo(String value) {
            addCriterion("platform_username =", value, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameNotEqualTo(String value) {
            addCriterion("platform_username <>", value, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameGreaterThan(String value) {
            addCriterion("platform_username >", value, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameGreaterThanOrEqualTo(String value) {
            addCriterion("platform_username >=", value, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameLessThan(String value) {
            addCriterion("platform_username <", value, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameLessThanOrEqualTo(String value) {
            addCriterion("platform_username <=", value, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameLike(String value) {
            addCriterion("platform_username like", value, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameNotLike(String value) {
            addCriterion("platform_username not like", value, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameIn(List<String> values) {
            addCriterion("platform_username in", values, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameNotIn(List<String> values) {
            addCriterion("platform_username not in", values, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameBetween(String value1, String value2) {
            addCriterion("platform_username between", value1, value2, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformUsernameNotBetween(String value1, String value2) {
            addCriterion("platform_username not between", value1, value2, "platformUsername");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordIsNull() {
            addCriterion("platform_password is null");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordIsNotNull() {
            addCriterion("platform_password is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordEqualTo(String value) {
            addCriterion("platform_password =", value, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordNotEqualTo(String value) {
            addCriterion("platform_password <>", value, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordGreaterThan(String value) {
            addCriterion("platform_password >", value, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordGreaterThanOrEqualTo(String value) {
            addCriterion("platform_password >=", value, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordLessThan(String value) {
            addCriterion("platform_password <", value, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordLessThanOrEqualTo(String value) {
            addCriterion("platform_password <=", value, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordLike(String value) {
            addCriterion("platform_password like", value, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordNotLike(String value) {
            addCriterion("platform_password not like", value, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordIn(List<String> values) {
            addCriterion("platform_password in", values, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordNotIn(List<String> values) {
            addCriterion("platform_password not in", values, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordBetween(String value1, String value2) {
            addCriterion("platform_password between", value1, value2, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformPasswordNotBetween(String value1, String value2) {
            addCriterion("platform_password not between", value1, value2, "platformPassword");
            return (Criteria) this;
        }

        public Criteria andPlatformIpIsNull() {
            addCriterion("platform_ip is null");
            return (Criteria) this;
        }

        public Criteria andPlatformIpIsNotNull() {
            addCriterion("platform_ip is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformIpEqualTo(String value) {
            addCriterion("platform_ip =", value, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpNotEqualTo(String value) {
            addCriterion("platform_ip <>", value, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpGreaterThan(String value) {
            addCriterion("platform_ip >", value, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpGreaterThanOrEqualTo(String value) {
            addCriterion("platform_ip >=", value, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpLessThan(String value) {
            addCriterion("platform_ip <", value, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpLessThanOrEqualTo(String value) {
            addCriterion("platform_ip <=", value, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpLike(String value) {
            addCriterion("platform_ip like", value, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpNotLike(String value) {
            addCriterion("platform_ip not like", value, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpIn(List<String> values) {
            addCriterion("platform_ip in", values, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpNotIn(List<String> values) {
            addCriterion("platform_ip not in", values, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpBetween(String value1, String value2) {
            addCriterion("platform_ip between", value1, value2, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformIpNotBetween(String value1, String value2) {
            addCriterion("platform_ip not between", value1, value2, "platformIp");
            return (Criteria) this;
        }

        public Criteria andPlatformPortIsNull() {
            addCriterion("platform_port is null");
            return (Criteria) this;
        }

        public Criteria andPlatformPortIsNotNull() {
            addCriterion("platform_port is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformPortEqualTo(Integer value) {
            addCriterion("platform_port =", value, "platformPort");
            return (Criteria) this;
        }

        public Criteria andPlatformPortNotEqualTo(Integer value) {
            addCriterion("platform_port <>", value, "platformPort");
            return (Criteria) this;
        }

        public Criteria andPlatformPortGreaterThan(Integer value) {
            addCriterion("platform_port >", value, "platformPort");
            return (Criteria) this;
        }

        public Criteria andPlatformPortGreaterThanOrEqualTo(Integer value) {
            addCriterion("platform_port >=", value, "platformPort");
            return (Criteria) this;
        }

        public Criteria andPlatformPortLessThan(Integer value) {
            addCriterion("platform_port <", value, "platformPort");
            return (Criteria) this;
        }

        public Criteria andPlatformPortLessThanOrEqualTo(Integer value) {
            addCriterion("platform_port <=", value, "platformPort");
            return (Criteria) this;
        }

        public Criteria andPlatformPortIn(List<Integer> values) {
            addCriterion("platform_port in", values, "platformPort");
            return (Criteria) this;
        }

        public Criteria andPlatformPortNotIn(List<Integer> values) {
            addCriterion("platform_port not in", values, "platformPort");
            return (Criteria) this;
        }

        public Criteria andPlatformPortBetween(Integer value1, Integer value2) {
            addCriterion("platform_port between", value1, value2, "platformPort");
            return (Criteria) this;
        }

        public Criteria andPlatformPortNotBetween(Integer value1, Integer value2) {
            addCriterion("platform_port not between", value1, value2, "platformPort");
            return (Criteria) this;
        }

        public Criteria andClientCodeIsNull() {
            addCriterion("client_code is null");
            return (Criteria) this;
        }

        public Criteria andClientCodeIsNotNull() {
            addCriterion("client_code is not null");
            return (Criteria) this;
        }

        public Criteria andClientCodeEqualTo(Integer value) {
            addCriterion("client_code =", value, "clientCode");
            return (Criteria) this;
        }

        public Criteria andClientCodeNotEqualTo(Integer value) {
            addCriterion("client_code <>", value, "clientCode");
            return (Criteria) this;
        }

        public Criteria andClientCodeGreaterThan(Integer value) {
            addCriterion("client_code >", value, "clientCode");
            return (Criteria) this;
        }

        public Criteria andClientCodeGreaterThanOrEqualTo(Integer value) {
            addCriterion("client_code >=", value, "clientCode");
            return (Criteria) this;
        }

        public Criteria andClientCodeLessThan(Integer value) {
            addCriterion("client_code <", value, "clientCode");
            return (Criteria) this;
        }

        public Criteria andClientCodeLessThanOrEqualTo(Integer value) {
            addCriterion("client_code <=", value, "clientCode");
            return (Criteria) this;
        }

        public Criteria andClientCodeIn(List<Integer> values) {
            addCriterion("client_code in", values, "clientCode");
            return (Criteria) this;
        }

        public Criteria andClientCodeNotIn(List<Integer> values) {
            addCriterion("client_code not in", values, "clientCode");
            return (Criteria) this;
        }

        public Criteria andClientCodeBetween(Integer value1, Integer value2) {
            addCriterion("client_code between", value1, value2, "clientCode");
            return (Criteria) this;
        }

        public Criteria andClientCodeNotBetween(Integer value1, Integer value2) {
            addCriterion("client_code not between", value1, value2, "clientCode");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIsNull() {
            addCriterion("update_date is null");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIsNotNull() {
            addCriterion("update_date is not null");
            return (Criteria) this;
        }

        public Criteria andUpdateDateEqualTo(Date value) {
            addCriterion("update_date =", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotEqualTo(Date value) {
            addCriterion("update_date <>", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateGreaterThan(Date value) {
            addCriterion("update_date >", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("update_date >=", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateLessThan(Date value) {
            addCriterion("update_date <", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateLessThanOrEqualTo(Date value) {
            addCriterion("update_date <=", value, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateIn(List<Date> values) {
            addCriterion("update_date in", values, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotIn(List<Date> values) {
            addCriterion("update_date not in", values, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateBetween(Date value1, Date value2) {
            addCriterion("update_date between", value1, value2, "updateDate");
            return (Criteria) this;
        }

        public Criteria andUpdateDateNotBetween(Date value1, Date value2) {
            addCriterion("update_date not between", value1, value2, "updateDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNull() {
            addCriterion("create_date is null");
            return (Criteria) this;
        }

        public Criteria andCreateDateIsNotNull() {
            addCriterion("create_date is not null");
            return (Criteria) this;
        }

        public Criteria andCreateDateEqualTo(Date value) {
            addCriterion("create_date =", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotEqualTo(Date value) {
            addCriterion("create_date <>", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThan(Date value) {
            addCriterion("create_date >", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateGreaterThanOrEqualTo(Date value) {
            addCriterion("create_date >=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThan(Date value) {
            addCriterion("create_date <", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateLessThanOrEqualTo(Date value) {
            addCriterion("create_date <=", value, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateIn(List<Date> values) {
            addCriterion("create_date in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotIn(List<Date> values) {
            addCriterion("create_date not in", values, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateBetween(Date value1, Date value2) {
            addCriterion("create_date between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andCreateDateNotBetween(Date value1, Date value2) {
            addCriterion("create_date not between", value1, value2, "createDate");
            return (Criteria) this;
        }

        public Criteria andDelFlagIsNull() {
            addCriterion("del_flag is null");
            return (Criteria) this;
        }

        public Criteria andDelFlagIsNotNull() {
            addCriterion("del_flag is not null");
            return (Criteria) this;
        }

        public Criteria andDelFlagEqualTo(Short value) {
            addCriterion("del_flag =", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagNotEqualTo(Short value) {
            addCriterion("del_flag <>", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagGreaterThan(Short value) {
            addCriterion("del_flag >", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagGreaterThanOrEqualTo(Short value) {
            addCriterion("del_flag >=", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagLessThan(Short value) {
            addCriterion("del_flag <", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagLessThanOrEqualTo(Short value) {
            addCriterion("del_flag <=", value, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagIn(List<Short> values) {
            addCriterion("del_flag in", values, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagNotIn(List<Short> values) {
            addCriterion("del_flag not in", values, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagBetween(Short value1, Short value2) {
            addCriterion("del_flag between", value1, value2, "delFlag");
            return (Criteria) this;
        }

        public Criteria andDelFlagNotBetween(Short value1, Short value2) {
            addCriterion("del_flag not between", value1, value2, "delFlag");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneIsNull() {
            addCriterion("expire_token_one is null");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneIsNotNull() {
            addCriterion("expire_token_one is not null");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneEqualTo(String value) {
            addCriterion("expire_token_one =", value, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneNotEqualTo(String value) {
            addCriterion("expire_token_one <>", value, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneGreaterThan(String value) {
            addCriterion("expire_token_one >", value, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneGreaterThanOrEqualTo(String value) {
            addCriterion("expire_token_one >=", value, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneLessThan(String value) {
            addCriterion("expire_token_one <", value, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneLessThanOrEqualTo(String value) {
            addCriterion("expire_token_one <=", value, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneLike(String value) {
            addCriterion("expire_token_one like", value, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneNotLike(String value) {
            addCriterion("expire_token_one not like", value, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneIn(List<String> values) {
            addCriterion("expire_token_one in", values, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneNotIn(List<String> values) {
            addCriterion("expire_token_one not in", values, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneBetween(String value1, String value2) {
            addCriterion("expire_token_one between", value1, value2, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenOneNotBetween(String value1, String value2) {
            addCriterion("expire_token_one not between", value1, value2, "expireTokenOne");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoIsNull() {
            addCriterion("expire_token_two is null");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoIsNotNull() {
            addCriterion("expire_token_two is not null");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoEqualTo(String value) {
            addCriterion("expire_token_two =", value, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoNotEqualTo(String value) {
            addCriterion("expire_token_two <>", value, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoGreaterThan(String value) {
            addCriterion("expire_token_two >", value, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoGreaterThanOrEqualTo(String value) {
            addCriterion("expire_token_two >=", value, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoLessThan(String value) {
            addCriterion("expire_token_two <", value, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoLessThanOrEqualTo(String value) {
            addCriterion("expire_token_two <=", value, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoLike(String value) {
            addCriterion("expire_token_two like", value, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoNotLike(String value) {
            addCriterion("expire_token_two not like", value, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoIn(List<String> values) {
            addCriterion("expire_token_two in", values, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoNotIn(List<String> values) {
            addCriterion("expire_token_two not in", values, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoBetween(String value1, String value2) {
            addCriterion("expire_token_two between", value1, value2, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andExpireTokenTwoNotBetween(String value1, String value2) {
            addCriterion("expire_token_two not between", value1, value2, "expireTokenTwo");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeIsNull() {
            addCriterion("platform_type is null");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeIsNotNull() {
            addCriterion("platform_type is not null");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeEqualTo(Integer value) {
            addCriterion("platform_type =", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeNotEqualTo(Integer value) {
            addCriterion("platform_type <>", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeGreaterThan(Integer value) {
            addCriterion("platform_type >", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeGreaterThanOrEqualTo(Integer value) {
            addCriterion("platform_type >=", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeLessThan(Integer value) {
            addCriterion("platform_type <", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeLessThanOrEqualTo(Integer value) {
            addCriterion("platform_type <=", value, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeIn(List<Integer> values) {
            addCriterion("platform_type in", values, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeNotIn(List<Integer> values) {
            addCriterion("platform_type not in", values, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeBetween(Integer value1, Integer value2) {
            addCriterion("platform_type between", value1, value2, "platformType");
            return (Criteria) this;
        }

        public Criteria andPlatformTypeNotBetween(Integer value1, Integer value2) {
            addCriterion("platform_type not between", value1, value2, "platformType");
            return (Criteria) this;
        }

        public Criteria andM1IsNull() {
            addCriterion("m1 is null");
            return (Criteria) this;
        }

        public Criteria andM1IsNotNull() {
            addCriterion("m1 is not null");
            return (Criteria) this;
        }

        public Criteria andM1EqualTo(Integer value) {
            addCriterion("m1 =", value, "m1");
            return (Criteria) this;
        }

        public Criteria andM1NotEqualTo(Integer value) {
            addCriterion("m1 <>", value, "m1");
            return (Criteria) this;
        }

        public Criteria andM1GreaterThan(Integer value) {
            addCriterion("m1 >", value, "m1");
            return (Criteria) this;
        }

        public Criteria andM1GreaterThanOrEqualTo(Integer value) {
            addCriterion("m1 >=", value, "m1");
            return (Criteria) this;
        }

        public Criteria andM1LessThan(Integer value) {
            addCriterion("m1 <", value, "m1");
            return (Criteria) this;
        }

        public Criteria andM1LessThanOrEqualTo(Integer value) {
            addCriterion("m1 <=", value, "m1");
            return (Criteria) this;
        }

        public Criteria andM1In(List<Integer> values) {
            addCriterion("m1 in", values, "m1");
            return (Criteria) this;
        }

        public Criteria andM1NotIn(List<Integer> values) {
            addCriterion("m1 not in", values, "m1");
            return (Criteria) this;
        }

        public Criteria andM1Between(Integer value1, Integer value2) {
            addCriterion("m1 between", value1, value2, "m1");
            return (Criteria) this;
        }

        public Criteria andM1NotBetween(Integer value1, Integer value2) {
            addCriterion("m1 not between", value1, value2, "m1");
            return (Criteria) this;
        }

        public Criteria andA1IsNull() {
            addCriterion("a1 is null");
            return (Criteria) this;
        }

        public Criteria andA1IsNotNull() {
            addCriterion("a1 is not null");
            return (Criteria) this;
        }

        public Criteria andA1EqualTo(Integer value) {
            addCriterion("a1 =", value, "a1");
            return (Criteria) this;
        }

        public Criteria andA1NotEqualTo(Integer value) {
            addCriterion("a1 <>", value, "a1");
            return (Criteria) this;
        }

        public Criteria andA1GreaterThan(Integer value) {
            addCriterion("a1 >", value, "a1");
            return (Criteria) this;
        }

        public Criteria andA1GreaterThanOrEqualTo(Integer value) {
            addCriterion("a1 >=", value, "a1");
            return (Criteria) this;
        }

        public Criteria andA1LessThan(Integer value) {
            addCriterion("a1 <", value, "a1");
            return (Criteria) this;
        }

        public Criteria andA1LessThanOrEqualTo(Integer value) {
            addCriterion("a1 <=", value, "a1");
            return (Criteria) this;
        }

        public Criteria andA1In(List<Integer> values) {
            addCriterion("a1 in", values, "a1");
            return (Criteria) this;
        }

        public Criteria andA1NotIn(List<Integer> values) {
            addCriterion("a1 not in", values, "a1");
            return (Criteria) this;
        }

        public Criteria andA1Between(Integer value1, Integer value2) {
            addCriterion("a1 between", value1, value2, "a1");
            return (Criteria) this;
        }

        public Criteria andA1NotBetween(Integer value1, Integer value2) {
            addCriterion("a1 not between", value1, value2, "a1");
            return (Criteria) this;
        }

        public Criteria andC1IsNull() {
            addCriterion("c1 is null");
            return (Criteria) this;
        }

        public Criteria andC1IsNotNull() {
            addCriterion("c1 is not null");
            return (Criteria) this;
        }

        public Criteria andC1EqualTo(Integer value) {
            addCriterion("c1 =", value, "c1");
            return (Criteria) this;
        }

        public Criteria andC1NotEqualTo(Integer value) {
            addCriterion("c1 <>", value, "c1");
            return (Criteria) this;
        }

        public Criteria andC1GreaterThan(Integer value) {
            addCriterion("c1 >", value, "c1");
            return (Criteria) this;
        }

        public Criteria andC1GreaterThanOrEqualTo(Integer value) {
            addCriterion("c1 >=", value, "c1");
            return (Criteria) this;
        }

        public Criteria andC1LessThan(Integer value) {
            addCriterion("c1 <", value, "c1");
            return (Criteria) this;
        }

        public Criteria andC1LessThanOrEqualTo(Integer value) {
            addCriterion("c1 <=", value, "c1");
            return (Criteria) this;
        }

        public Criteria andC1In(List<Integer> values) {
            addCriterion("c1 in", values, "c1");
            return (Criteria) this;
        }

        public Criteria andC1NotIn(List<Integer> values) {
            addCriterion("c1 not in", values, "c1");
            return (Criteria) this;
        }

        public Criteria andC1Between(Integer value1, Integer value2) {
            addCriterion("c1 between", value1, value2, "c1");
            return (Criteria) this;
        }

        public Criteria andC1NotBetween(Integer value1, Integer value2) {
            addCriterion("c1 not between", value1, value2, "c1");
            return (Criteria) this;
        }

        public Criteria andVideoIpIsNull() {
            addCriterion("video_ip is null");
            return (Criteria) this;
        }

        public Criteria andVideoIpIsNotNull() {
            addCriterion("video_ip is not null");
            return (Criteria) this;
        }

        public Criteria andVideoIpEqualTo(String value) {
            addCriterion("video_ip =", value, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpNotEqualTo(String value) {
            addCriterion("video_ip <>", value, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpGreaterThan(String value) {
            addCriterion("video_ip >", value, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpGreaterThanOrEqualTo(String value) {
            addCriterion("video_ip >=", value, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpLessThan(String value) {
            addCriterion("video_ip <", value, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpLessThanOrEqualTo(String value) {
            addCriterion("video_ip <=", value, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpLike(String value) {
            addCriterion("video_ip like", value, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpNotLike(String value) {
            addCriterion("video_ip not like", value, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpIn(List<String> values) {
            addCriterion("video_ip in", values, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpNotIn(List<String> values) {
            addCriterion("video_ip not in", values, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpBetween(String value1, String value2) {
            addCriterion("video_ip between", value1, value2, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoIpNotBetween(String value1, String value2) {
            addCriterion("video_ip not between", value1, value2, "videoIp");
            return (Criteria) this;
        }

        public Criteria andVideoPortIsNull() {
            addCriterion("video_port is null");
            return (Criteria) this;
        }

        public Criteria andVideoPortIsNotNull() {
            addCriterion("video_port is not null");
            return (Criteria) this;
        }

        public Criteria andVideoPortEqualTo(String value) {
            addCriterion("video_port =", value, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortNotEqualTo(String value) {
            addCriterion("video_port <>", value, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortGreaterThan(String value) {
            addCriterion("video_port >", value, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortGreaterThanOrEqualTo(String value) {
            addCriterion("video_port >=", value, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortLessThan(String value) {
            addCriterion("video_port <", value, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortLessThanOrEqualTo(String value) {
            addCriterion("video_port <=", value, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortLike(String value) {
            addCriterion("video_port like", value, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortNotLike(String value) {
            addCriterion("video_port not like", value, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortIn(List<String> values) {
            addCriterion("video_port in", values, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortNotIn(List<String> values) {
            addCriterion("video_port not in", values, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortBetween(String value1, String value2) {
            addCriterion("video_port between", value1, value2, "videoPort");
            return (Criteria) this;
        }

        public Criteria andVideoPortNotBetween(String value1, String value2) {
            addCriterion("video_port not between", value1, value2, "videoPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpIsNull() {
            addCriterion("play_back_ip is null");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpIsNotNull() {
            addCriterion("play_back_ip is not null");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpEqualTo(String value) {
            addCriterion("play_back_ip =", value, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpNotEqualTo(String value) {
            addCriterion("play_back_ip <>", value, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpGreaterThan(String value) {
            addCriterion("play_back_ip >", value, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpGreaterThanOrEqualTo(String value) {
            addCriterion("play_back_ip >=", value, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpLessThan(String value) {
            addCriterion("play_back_ip <", value, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpLessThanOrEqualTo(String value) {
            addCriterion("play_back_ip <=", value, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpLike(String value) {
            addCriterion("play_back_ip like", value, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpNotLike(String value) {
            addCriterion("play_back_ip not like", value, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpIn(List<String> values) {
            addCriterion("play_back_ip in", values, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpNotIn(List<String> values) {
            addCriterion("play_back_ip not in", values, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpBetween(String value1, String value2) {
            addCriterion("play_back_ip between", value1, value2, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackIpNotBetween(String value1, String value2) {
            addCriterion("play_back_ip not between", value1, value2, "playBackIp");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortIsNull() {
            addCriterion("play_back_port is null");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortIsNotNull() {
            addCriterion("play_back_port is not null");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortEqualTo(String value) {
            addCriterion("play_back_port =", value, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortNotEqualTo(String value) {
            addCriterion("play_back_port <>", value, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortGreaterThan(String value) {
            addCriterion("play_back_port >", value, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortGreaterThanOrEqualTo(String value) {
            addCriterion("play_back_port >=", value, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortLessThan(String value) {
            addCriterion("play_back_port <", value, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortLessThanOrEqualTo(String value) {
            addCriterion("play_back_port <=", value, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortLike(String value) {
            addCriterion("play_back_port like", value, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortNotLike(String value) {
            addCriterion("play_back_port not like", value, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortIn(List<String> values) {
            addCriterion("play_back_port in", values, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortNotIn(List<String> values) {
            addCriterion("play_back_port not in", values, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortBetween(String value1, String value2) {
            addCriterion("play_back_port between", value1, value2, "playBackPort");
            return (Criteria) this;
        }

        public Criteria andPlayBackPortNotBetween(String value1, String value2) {
            addCriterion("play_back_port not between", value1, value2, "playBackPort");
            return (Criteria) this;
        }
    }

    public static class Criteria extends GeneratedCriteria {

        protected Criteria() {
            super();
        }
    }

    public static class Criterion {
        private String condition;

        private Object value;

        private Object secondValue;

        private boolean noValue;

        private boolean singleValue;

        private boolean betweenValue;

        private boolean listValue;

        private String typeHandler;

        public String getCondition() {
            return condition;
        }

        public Object getValue() {
            return value;
        }

        public Object getSecondValue() {
            return secondValue;
        }

        public boolean isNoValue() {
            return noValue;
        }

        public boolean isSingleValue() {
            return singleValue;
        }

        public boolean isBetweenValue() {
            return betweenValue;
        }

        public boolean isListValue() {
            return listValue;
        }

        public String getTypeHandler() {
            return typeHandler;
        }

        protected Criterion(String condition) {
            super();
            this.condition = condition;
            this.typeHandler = null;
            this.noValue = true;
        }

        protected Criterion(String condition, Object value, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.typeHandler = typeHandler;
            if (value instanceof List<?>) {
                this.listValue = true;
            } else {
                this.singleValue = true;
            }
        }

        protected Criterion(String condition, Object value) {
            this(condition, value, null);
        }

        protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
            super();
            this.condition = condition;
            this.value = value;
            this.secondValue = secondValue;
            this.typeHandler = typeHandler;
            this.betweenValue = true;
        }

        protected Criterion(String condition, Object value, Object secondValue) {
            this(condition, value, secondValue, null);
        }
    }
}